package main

import (
	"fmt"
	"time"
)

func main(){
	now := time.Now()
	fmt.Println(now)
	fmt.Println(now.String())
	// "2006-01-02 15:04:05"为go语言固定时间格式化，必须这样写
	fmt.Println(now.Format("2006-1-2 15:04:05"))
	// 2006 年
	//01 月
	//02 日
	//03 时 （12小时制） 15 (=03+12) 24小时制
	//04 分
	//05 秒
	fmt.Println(now.Format("2006-01-02 03:4:5"))

	//t :=time.Date(2020, time.April,5, 6, 7, 8, 23, time.Local)
	t :=time.Date(2020, 4,5, 6, 7, 8, 23, time.Local)
	fmt.Println(t.Format("2006-1-2 3:4:5"))

	// Parse时间格式化年月日必须严格对应，双数则格式化双数，单数则格式化单数
	// "2020年06月07日"格式化时必须为 "2006年01月02日",且年月日汉字也一样
	// 一双一单格式化可为 双单 或 严格对应。"2020年6月07日" 格式化可为"2006年1月2日"
	// 时分秒格式化
	// "8:9:5" 只能为 "3:4:5"
	// "08:09:05" 可以任意格式化
	// 时使用0补双数，格式化时必须为03或15，分秒为单数，格式化必须为单数
	s := "2020年6月07日 08:9:5" //string
	t2 ,err := time.Parse("2006年1月02日 03:4:5",s)
	if err != nil{
		fmt.Println("err:",err)
	}
	fmt.Println(t2)
	fmt.Printf("%T\n",t2)
}
